package com.code.AZPlan.model.bo;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;

import java.io.Serializable;
import java.math.BigDecimal;

@ApiModel("站内用户业务对象")
@Data
@EqualsAndHashCode(callSuper = false)
@Builder
@NoArgsConstructor
@AllArgsConstructor
@JsonIgnoreProperties(value = {"hibernateLazyInitializer", "handler"})

public class InSiteUserBO implements Serializable {

    private static final long serialVersionUID = -1658038051629064909L;

    @ApiModelProperty(value = "转入方用户账号", example = "XXXXXX")
    private String userAccount;

    @ApiModelProperty(value = "币种类型", example = "XWC")
    private String coinType;

    @ApiModelProperty(value = "转入方用户手机号", example = "XXXXXX")
    private String userPhone;

    @ApiModelProperty(value = "转入方用户主键", example = "XXXXXX")
    private String transferInUserId;

    @ApiModelProperty(value = "转出方用户主键", example = "XXXXXX")
    private String transferOutUserId;

    @ApiModelProperty(value = "转账数量", example = "0.00")
    private BigDecimal transferAmount;

    @ApiModelProperty(value = "手续费", example = "0.00")
    private BigDecimal fee;

    @ApiModelProperty(value = "交易密码", example = "******")
    private String tranPwd;

    @ApiModelProperty(value = "验证码", example = "******")
    private String authCode;

    @ApiModelProperty(value = "用户名称", example = "XXXXXX")
    private String userName;

    @ApiModelProperty(value = "用户昵称", example = "XXXXXX")
    private String userNickName;

    @ApiModelProperty(value = "转入用户XWC钱包版本号", example = "0")
    private Integer transferInXwcCoinBalanceVersion;

    @ApiModelProperty(value = "转出用户XWC钱包版本号", example = "0")
    private Integer transferOutXwcCoinBalanceVersion;

    @ApiModelProperty(value = "转入用户BTC钱包版本号", example = "0")
    private Integer transferInBtcCoinBalanceVersion;

    @ApiModelProperty(value = "转出用户BTC钱包版本号", example = "0")
    private Integer transferOutBtcCoinBalanceVersion;

    @ApiModelProperty(value = "转入用户USDT钱包版本号", example = "0")
    private Integer transferInUsdtCoinBalanceVersion;

    @ApiModelProperty(value = "转出用户USDT钱包版本号", example = "0")
    private Integer transferOutUsdtCoinBalanceVersion;
}
